Clamp control for injection molding machine

ABSTRACT

A control system utilizing a programmable controller for an injection molding machine in which the controller is periodically scanned in response to input signals to produce output control signals is provided with an impulse response filter arrangement. The impulse response filter senses a plurality of current and past sensor input signals to accurately predict the occurrence of a variable triggering event which will in fact be sensed by a sensor. A predictive sensor signal is then generated which is inputted to the controller in advance of the occurrence of the triggering event and at a time which corresponds to the processor scan time so that the controller generates the desired output at the precise time the triggering event occurs thus eliminating controller response latency from the control system.

This is a continuation of application Ser. No. 296,658 filed Aug. 26,1994, which is a continuation-in-part of U.S. application Ser. No.247,082, filed May 20, 1994, entitled "Barrel Temperature StateController For Injection Molding Machines", now U.S. Pat. No. 5,456,870.

This invention relates generally to control systems and moreparticularly to an improved control system for injection moldingmachines using programmable controllers.

The invention is particularly applicable to and will be described withspecific reference to an improved control system for clamping andreleasing the mold of an injection molding machine. However, thoseskilled in the art will recognize the invention has numerous otherapplications in which an output signal, variable or constant, is made inresponse to an input signal derived from a sensor to regulate aninjection molding machine function such as velocity, screw rotation,position, pressure, etc.

INCORPORATION BY REFERENCE

U.S. patent application Ser. No. 247,082, filed May 20, 1994 and anarticle authored by the inventors hereof entitled "The Application ofAdvanced Control Theory to Enhance Molding Machine Performance",appearing at pages 94-102 of IEEE Conference Record of 1994 Forty-sixthAnnual Conference of Electrical Engineering Problems in the Rubber andPlastics Industries, April 26 & 27, 1994, is hereby incorporated byreference.

The following material which does not, per se, form any part of theinvention, is also incorporated by reference so that details known tothose skilled in the art need not be repeated herein:

a) "Digital Filters", Third Edition, by R. W. Hamming, published byPrentice Hall, 1989, specifically pages 1-20;

b) "Digital Control System Analysis and Design", Second Edition, byCharles L. Phillips and H. Troy Nagle, published by Prentice Hall, 1990,specifically pages 459-480;

c) "Computer Controlled Systems", Second Edition, by Karl J. Astrom andBjorn Wittenmark, published by Prentice Hall, 1990, specifically pages150-151, 199-201, 233-235;

d) "Numerical Recipes in C", by William H. Press, Brian P. Flannery,Saul A. Teukolsky, William T. Vetterling, published by CambridgeUniversity Press, 1988, specifically pages 452-460; and

e) U.S. Pat. No. 5,291,391 to Mead et al., issued Mar. 1, 1994.

BACKGROUND

Mold closing of an injection molding machine is typically accomplishedeither hydraulically or mechanically via a toggle mechanism. Theinvention specifically applies to both closing arrangements. However,for ease in discussion, the invention will initially be described forhydraulic clamping arrangements.

A) Control systems used in Injection Molding machines to regulate moldclosing.

Mold closing typically occurs in a two-speed or two-step arrangement.After the mold halves open and the molded part is ejected from the mold,one of the mold members is brought rapidly into close proximity to theother mold member where its motion slows. The motion of the now slowlymoving mold member is brought to a stop just as the mold members contactone another or "kiss". The plastic is then injected to complete themolding cycle.

It is appreciated that the time for mold closing comprises just oneportion of the mold cycle but nevertheless is an important considerationregarding the throughput of the machine. For example, a ten second moldcycle, which is somewhat typical, could be significantly improved if themold closing step could be improved by as little as one tenth of asecond.

The mold closing mechanism uses a position sensor to determine theposition of the mold halves which is typically a linear potentiometerfor a hydraulic clamp and a rotary potentiometer for a toggle clamp. Atthe start of mold closing, the machine hydraulics move one of the moldhalves at a fast rate of speed to quickly close the mold through themajor portion of its travel. When the moving mold member "trips" orcrosses a pre-set voltage the speed is reduced to a slower speed andwhen a second crossover position is reached, the mold motion stops. Nowit will be appreciated that from the time the first crossover switch isactuated, some time must elapse before the flow control valve isactuated to reduce the speed. Further, once the flow control valve isactuated, the momentum of the mold carries it forward. If the machineruns only one mold, it is possible through trial and error to set thetrip or crossover positions, to give a minimum mold close cycle time. Infact, improvements have been made by using an additional crossoverposition which is triggered prior to the time the first crossoveroccurs. This arming switch adjusts for the momentum of the moving moldmember and provides a better control than the single crossover switch.However, the control relies on a trial and error approach for onespecific part to achieve any degree of optimization. Further the controlassumes the hydraulics of the machine remains essentially constant andis repeated cycle after cycle. Should there be any variation in thespeed which could occur for any number of reasons between cycles orwithin a cycle, the momentum of the moving mold member changes affectingcontrol, etc.

A recent development in this area has been to employ an algorithm in aprogrammable logic control. The algorithm determines the momentum of themoving mold member based on the speed set by the operator so that themoving mold member can be stopped at the point where it contacts theclosed member. Because of the time it takes to compute the calculationby the machine's microprocessor, the speed of the moving member is setin advance based on the values set by the machine operator. Themicroprocessor then has sufficient time to perform the algorithmcalculation (since it is performed when the command signal is set) sothat an output signal is timely sent to the proportioning flow valveduring mold close. So long as the speed of the moving mold member equalsthat set by the operator, the control is acceptable and represents animprovement over the devices discussed above. Should there be avariation between the actual speed and the set speed, the control isunresponsive. Further the control is implemented for only one stage,start-stop. There is no crossover position.

In theory, a closed loop feedback control should be ideal for thisapplication. In practice, closed loop feedback control loops have notproven acceptable for control of mold closing for at least threereasons. The primary reason is that a closed loop having an acceptablefrequency of response has not been developed. That is, a closed loopcontrol capable of being properly tuned has not been developed, and maynot be able to be developed. For example, to dissipate the stored energyor momentum of the moving mold member typically requires about 300milliseconds. As a generally accepted rule of thumb in control theory,it takes about five times the time span of the controlled event tocontrol the event. Thus, while the velocity of the ram can be observedand adjusted in time from increments satisfactorily within theconstraints of this rule, to control the momentum of the moving moldmember would take, in theory, about one and one-half seconds. This istotally unacceptable and explains why closed loop feedback control hasnot been used to control clamp closing. The second reason is thatfeedback or closed loop is traditionally known in the art as not being"time optimal". Specifically, closed loop as a control technique doesnot optimize or reduce to a minimum the time it takes to control thefunction. The last reason dictating against the use of closed loopcontrol of mold closing is more subtle. A closed loop control requiresprofiling. Like the algorithm calculation noted above, the speed of theclamp is controlled throughout its travel. Injection mold machineoperators typically view the control as two stage, i.e., fast-slow andslow-stop, open loop arrangements. To the extent that profiling theclosing action involves change, there is some reluctance on the part ofthe end user to accept such controls.

B) Control Art.

In accordance with conventional programmable logic control (PLC) theory,all controls have response latency. For example, in the case of a clampcontrol, it can be considered that there are two processing states,namely, state A in which a mold member starts to close at a fast speedand state B in which the mold member closes at a slow speed until itcontacts the other mold member whereat it stops. Upon detection of anevent, E, i.e., the crossover position, the output, i.e, theproportioning control valve is set from a fast speed rate 0 to a slowspeed rate 0'. In normal PLC systems, an average response latency of atleast 1/2 of T_(A), the execution of the state A sequence instruction,will be realized in setting output 0 to state 0' and switching sequenceexecution to state B. Various techniques are known to reduce theresponse latency, T_(A). One method is to interrupt the scan of thesequence instructions for state A when event E is detected. Othermethods involve pre-arming techniques where the analog output card ispre-programmed to respond to position E without processing a logic scan.Still another method is disclosed in U.S. Pat. No. 5,291,391 in which aspecific sensor signal is sent to a "fast" processing portion of theprogrammable controller to independently early generate a specificoutput signal. Of course if the sensor information needed for event E isrequired in the control logic, such as that required in a molding cycle,the information is not available until the scan is complete. In general,these methods involve drastic increases in the complexity of the logicprogram and severe limitations in what logic processing is availablewhen the set point or crossover position is reached. Also, these methodsdo not address the remaining sources of latency nor problems incontrolling cycle to cycle repeatability or "jitter".

Finally, it should be noted as gathered from the material incorporatedby reference herein that feed forward, state controllers, and finiteimpulse response filters are devices which are known per se. They havenot heretofore been used in injection molding control systems because itis believed, of the complexities and peculiarities of the molding cyclesperformed in injection molding machines and also the processing powerlimitations of current controls. Further, the use of such techniqueshave been disclosed and discussed, in theory, with respect to singlefunction controls employed in an external loop. They have not beenconventionally used in PLC's or in combination with PLC's and externalloops. Significantly, signal noise considerations have limited practicalapplications of state controllers or finite impulse response filters.

SUMMARY OF THE INVENTION

Accordingly, it is a principal object of the invention to provide acontrol system in which a sensed event in a molding cycle results in aninstantaneous output and change in the molding cycle without lag orovertravel.

This object along with other features of the invention is achieved in ageneral, broad inventive sense, by a control system which uses anyconventional, programmable controller to regulate at least one outputdevice by an output signal produced in response to a sensor sensingmeasurements of when an actual event programmed into the controller as acommand signal occurs. The sensor generates prior sensing signals beforethe actual event occurs and an actuating sensor signal when the actualevent occurs and the controller periodically evaluates a first set ofnormal equations to produce at least the output signal in response tothe actuating sensor signal. The system includes a finite impulseresponse filter arrangement for establishing a predictive sensor signalindicative of the occurrence of the event prior to the time theactuating sensor signal is generated by periodically evaluating a secondset of equations utilizing certain prior sensor signals. A comparator isprovided to compare the predictive sensor signal with the command signalor, alternatively, the prior sensor signal with a predictive commandsignal to establish a state of comparison. A transmitting arrangement,actuated when the comparator indicates a change in the state ofcomparison, transmits the predictive sensor signal status as theactuating sensor signal status to the programmable controller at a settime prior to the occurrence of the actual event which substantiallycoincides with the time expended by the programmable controller inevaluating the first set of equations whereby the response latency ofthe controller is substantially eliminated.

In accordance with another important aspect of the invention, thecontrol system includes a synchronizing arrangement which receives theoutput signal generated by the controller in response to the predictivesensor signal status and delays the transmission of the output signal tothe output device until the synchronizing arrangement receives theactual sensor signal whereby the output signal is prevented from beinginadvertently early generated while simultaneous transmission of theoutput signal with the occurrence of the actuating sensor signal isachieved.

In accordance with yet another general feature of the invention, thefinite impulse response filter arrangement periodically samples andaverages a plurality of sensor signals indicative of the current stateof the sensor and a similar plurality of a past sensor state whichproduces relatively clear, noise-reduced signals to enable accuratecalculations of a future sensor state occurring at the set time periodto produce the predictive signal. The predictive sensor signal can thenbe accurately compared with the command signal to indicate a change inthe state of comparison at the precise set time prior to the occurrenceof the actual event.

In accordance with a specific feature of the invention, particularlyuseful for regulating a molding cycle in which the cycle sequentiallyproceeds in stages from mold closing through injection, recovery, moldopening, and eject the programmable controller performs a first set ofnormal equations controlling the current state of the molding cycle andwhen certain conditions are sensed and inputted to the current state,the programmable controller switches from the current state to asuccessive state which is processed by a second set of normal equationsindicative of that state. Significantly, prior to starting theprogrammable scan in the next successive state with input signals,output signals are read out to select output devices thus avoiding scaninterrupt schemes and complicated logic associated therewith.

In accordance with a more specific feature of the invention, the firstset of normal equations and the second set of normal equations areidentical and the input signal triggering the transition from thecurrent state to another state is a predictive sensor signal statusadvanced in time so that state transitions can be orderly progressedduring the mold cycle without time lag while output devices preciselycontrolled. Still further, the input signals for the start of the scanof the next successive state are delayed until arrival of the actualsignal of the sensed event which is not processed by any logic scan toassure timely transition of output signals not only to the output devicebut also to start the scan of the next successive state.

In accordance with yet another important feature of the invention anumber of finite impulse response filters can be provided in the controlsystem, each calculating a predictive sensor signal indicative of acontrol variable affecting the responsiveness of the system to thespecific event which is to be controlled (or to other differentcontrolled events) with the predictive sensor signal statuses inputtedto the programmable controller as if they were actuating sensor signalsand the logic of the controller used to produce the output signal at theprecise time without time lag attributed to the processing time of thecontroller or time lag attributed to the responsiveness of the outputdevice or system response to the output device.

In accordance with a specific feature of the invention, a controlapparatus is provided for regulating the closing of an injection moldingmachine which includes a mold having a stationary member and a movablemember; a hydraulic arrangement for moving the moving mold member over afixed distance into contact with the stationary member which includes apump and a flow control arrangement for variably controlling the pump inresponse to an electrical output signal whereby the speed of the movingmold member is controlled; an operator console arrangement for variablysetting a command signal to establish a first crossover position whereatthe speed of the moving mold member is changed in advance of a moldclose position the moving mold member occupies when it contacts thestationary mold member, and a sensor associated with the moving moldmember for continuously generating input sensor signals indicative ofthe position of the moving mold member at any given time. The controlsystem includes a programmable controller for periodically evaluating afirst set of equations to generate the output signal corresponding tothe command signal in response to a selected sensor signal generated bythe sensor when the moving mold member reaches the first crossoverposition. A finite impulse response filter arrangement is provided forreceiving the sensor signals and periodically evaluating a secondspecial set of equations determinative of the current speed of themoving mold member based on the sensor signal to develop a predictivesensor signal and a mechanism is provided to transmit the predictivesensor signal status as the selected sensor signal to the programmablecontroller at a set time prior to the moving mold member reaching thefirst crossover position whereby the programmable controller causes themoving mold member to change speed when it reaches the first crossoverposition without overtravel. Specifically the set time is set to beequal to or greater than the response latency of the programmablecontroller and/or the variation in response latency of the programmablecontroller and/or the time to dissipate momentum or inertia of themoving mold member.

In accordance with yet another specific but important aspect of theinvention, the finite impulse response filter arrangement preferablydetermines an advanced position of the moving mold member at any giventime by calculating the current speed of the moving mold member andadding to the current sensed position of the moving mold member thedistance the moving mold member travels at the calculated speed duringthe set time period to periodically generate a variable predictivesignal corresponding to an advanced position of the moving mold memberat any given time. Importantly, by periodically comparing the predictivesensor signal with the set crossover position signal in a comparatorarrangement, a state of comparison is obtained which is periodicallyinputted to the program controller so that the controller is able toimplement in advance (and at a time corresponding to the lag time)associated functions such as programmed braking of the moving moldmember prior to the crossover position or injection screw rotation etc.,all in addition to generating the output signal in compensation of thelag time when the comparator senses a change of state indicated by thepredictive sensor signal reaching the crossover position.

In accordance with still another aspect of the invention, a method forcontrolling the molding cycle of an injection molding is provided whichincludes the steps of a) sensing a plurality of events occurring duringthe molding cycle and generating sensor signals for the events, at leastone specific sensor signal continuously generated before and during aspecific event by a continuous sensor; b) inputting the sensor signalsand command signals which define the events into a programmablecontroller; c) periodically evaluating a set of normal equations duringa scan of the normal equations by the programmable controller to produceat least a first output signal for a specific physical device associatedwith the molding machine for controlling a portion of the molding cycleaffected by the specific event; d) periodically evaluating a second setof equations utilizing the specific sensor signals to produce apredictive varying sensor signal indicative of a sensor signal estimatedto occur at a future set time in place of the then existing sensorsignal; e) comparing the predictive sensor signal with a command signalindicative of the specific event; and f) transmitting the predictivesensor signal, when a change in the state of comparison has occurred instep (e), to the programmable controller at the set time prior to theoccurrence of the specific event to cause the controller to generate thefirst output signal at the time the specific event occurs without anylag attributed to the scan time of the controller.

In accordance with a more specific method aspect of the invention, thespecial event is mold closing and the continuous sensor measures thedistance traveled by a moving mold member towards a stationary moldmember. Importantly, the second set of equations determines a predictedcurrent moving mold position which is factored an advance time based onthe current sensed speed of a moving mold, so that the output signal istransmitted to the physical device at substantially the precise time thecrossover position is reached by the moving mold member.

It is another object of the invention to provide a control apparatus fora mold clamp of an injection molding machine which alleviates orsubstantially reduces mold overtravel.

A general object of the invention is to use state transitions in aprogrammable controller to control in a timely manner the sequences of amolding cycle.

It is yet another object of the invention to provide a control for aninjection molding machine which remains essentially constant inrepeatedly performing its control functions despite variations whichinherently occur in the molding cycle.

Still another object of the invention is to provide a predictive controlfor an injection molding machine which determines mathematically foreach cycle based on existing conditions which can vary when an eventwill occur to release a command signal prior to the time the sensoractually senses the event.

It is another object of the invention to provide a responsive control inan injection molding machine which does not use extensive and complexlogic programming to avoid or minimize the time spent in processinglogic scans of the control.

It is a general object of the invention to provide a control for aninjection molding machine in which mathematical functions are applied toa sensor signal to variably predict based on existing conditions when inthe future an output or command signal is to be sent to a control on theinjection molding machine so that the control is actuated at a precisetime in the molding cycle.

It is another general object of the invention to provide a control foran injection molding machine in which mathematical functions are appliedto a sensor signal to trigger an output signal at a time whichcompensates for one or more or any combination of the following:

a) the average response latency in the control;

b) the "jitter" or variations in response latency of the control; and

c) the physical characteristics of the machine components which affectsits control such as its momentum or stored energy, i.e., momentum of amoving mold member.

A still further object of the invention is to provide in an injectionmolding machine a feed forward technique to insure consistency andreliability of producing an output signal at the precise time suchsignal is needed in the molding cycle time.

A more specific object of the invention is to provide in an injectionmolding machine a feed forward technique utilizing a finite impulseresponse filter to account for response latency in the control and thenutilize a second feed forward technique to account for other moldingvariables such as overtravel due to the momentum or inertia of the mold.

A still more specific object of the invention is to provide method andapparatus for controlling the mold cycle of an injection molding machinein which a plurality of impulse response filters are employed to predicta plurality of variables which affect the control to provide a moreresponsive control.

Still yet, a general object of the invention is to provide in anycontrol system utilizing a programmable controller, an arrangementincluding method and apparatus, for developing a predictive input signalfrom a sensor signal indicative of actual conditions which is inputtedas the sensor signal to the programmable controller at an advanced timeand processed by the controller in a conventional manner to generate anoutput signal without any response latency attributed to the controlleror otherwise.

A still more specific but general object of the invention is to providea programmable controller for controlling .a molding cycle by means ofstate changes triggered by select sensor signals wherein output signalsare generated during state transitions to avoid complicated interruptschemes for controlling critical events.

These and other objects, features and advantages of the presentinvention will become apparent to those skilled in the art upon areading of the Detailed Description of the invention set forth belowtaken together with the drawings which will be described in the nextsection.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention may take physical form in certain parts and arrangement ofparts, a preferred embodiment of which will be described in detail andillustrated in the accompanying drawings which form a part hereof andwherein:

FIG. 1 is a diagrammatic illustration of the components controlling theclosing of a mold in an injection molding machine;

FIG. 2 is a general diagram in block form of the control system of thepresent invention;

FIG. 3 is a prior art graph of the velocity of the moving mold member asit travels to close against the stationary mold member;

FIG. 4 is a graph similar to FIG. 3 but showing the velocity of themoving mold member when controlled by the system of the presentinvention;

FIGS. 5A, 5B, 5C, 5D, 5E and 5F are each graphs showing the responselatency and "jitter" inherent in any control system for variouscomponents in the system;

FIG. 6 is a graph showing position and time of the moving mold member asit closes with the stationary mold member;

FIG. 7 is a diagrammatic illustration of a buffer sampling scheme usedin the present invention;

FIG. 8 is a general schematic, in block form, of a portion of thecontrol system of the present invention;

FIG. 9 is a general schematic, in block form, of portions of the analogand sequencer control cards used in the control system of the presentinvention;

FIG. 10 is a block diagram of the state transition logic generally usedin the present invention;

FIG. 11 is a block diagram of the state transition logic use in thepreferred embodiment of the present invention;

FIG. 12A is a graph substantially identical to FIG. 6 but on a timescale identical to FIGS. 12B, C and D;

FIG. 12B is a chart showing generation of electrical signals at timescorrelated to FIGS. 12A, C, and D;

FIG. 12C is a time plot of the scans of the programmable controlleroccurring during changeover from mold fast to mold slow status;

FIG. 12D is a graph of the analog voltage outputted to the flow controlvalve regulating the speed of the moving mold member;

FIG. 13A is a graph similar to FIGS. 6 and 12A but showing the sensorsignals generated at the mold stop crossover position;

FIG. 13B is a graph similar to FIG. 12D but showing the analog voltageoutputted to brake the moving mold member; and

FIG. 13C is a graph of the velocity of moving mold member whenpredictively braked in accordance with the analog voltage applied to theflow control valve in FIG. 13B.

DETAILED DESCRIPTION OF THE INVENTION

Referring now to the drawings wherein the showings are for the purposeof illustrating a preferred embodiment of the invention only and not forthe purpose of limiting same there is shown in FIGS. 1 and 2 a schematicarrangement of the mold clamp 10 of an injection molding machine 12. Theprincipal components of the mold clamp include a stationary mold member13 and a moving mold member 14 which is movable along tie rods 15 into aclamping-unclamping relationship. A pump 17 on injection molding machine12 provides the power to displace moving mold member 14. For simplicityand ease of illustration, a hydraulic clamp arrangement will bediscussed and this is shown schematically by hydraulic cylinder 18powered by pump 17 displacing moving mold member 14. Alternatively, aclamp toggle arrangement well known to those skilled in the art, can beutilized in place of the hydraulic clamp arrangement illustrated. Theinvention disclosed herein will work with either arrangement.

A hydraulic or proportioning flow control valve 20 is provided forcontrolling the flow of fluid into and out of hydraulic cylinder 18 andtherefore the speed and position of moving mold member 14 relative tostationary mold member 13. Flow control valve 20 is actuated orcontrolled by a variable 0-10 volt analog signal on electrical outputsignal line 21. Those skilled in the art will understand that pump 17can be a variable volume pump which obviates the need of a separate flowcontrol valve. In such instance, the controls within the pump regulatedby the signal on output signal line 21 acts to control the flow andpressure of the pump. Accordingly, the term "flow control means" whenused herein means not only flow control valve 20 but also the controlswithin a variable volume pump which permit pump 17 to regulate itsoutput.

An electrical sensor 23 attached, in part, to movable mold member 14provides an electric variable analog signal on a sensor input signalline 24. For ease in drawing clarity a slide wire potentiometer isschematically illustrated. However, any other electrical sensor devicescan be used such as transducers, rotary potentiometer for toggle clamp,LVDT, etc. For illustration purposes only a first, adjustable crossoverposition 25 and a second adjustable crossover position 26 is shown. Inpractice, the positions simply represent voltages (or current)correlated to position points dialed in by the machine operator at thecontrol console 30.

As is well known to those skilled in the art, an output analog signalfrom an analog card 34 controls flow control valve 20 and the speed ofmoving mold member 14 until contact with first crossover position 25occurs. At that time, sensor 23 inputs analog signal into analog card 34which causes a sequencer card 38 to send an output signal through analogcard 34 to output signal line 21 to flow control valve 20 which reducesthe speed of moving mold member 14. When sensor 23 detects secondcrossover position 26 a signal on sensor input line 24 similarly causessequencer card 38 to output a signal on output signal line 21 to causemoving mold member 14 to stop. A preset pressure is then applied by pump17 sufficient to cause tie rods 15 to stretch whereupon the injectionstroke in the molding cycle occurs. A similar arrangement likewiseapplies to a toggle clamp in that the crossover position whereat themechanism linkage for fast-slow changeover is varied, etc. As thus fardescribed, the arrangement is conventional and typical of existingcontrol arrangements.

One of the specific objects of the invention is to reduce overtravel ofmoving mold member 14 so that the time for the mold closing (and byextension the mold opening and eject) can be minimized to optimize thethroughput of the machine. This is graphically illustrated in FIG. 3 inwhich the travel of moving mold member 14 is plotted on the x-axis andthe speed of moving mold member 14 on the y-axis. In theory the velocityof moving mold member is shown by solid line designated by referencenumeral 40. (For ease in explanation, the velocity at first crossoverposition 25 is shown to instantaneously drop from the fast velocity,V_(f), to the slow velocity, V_(s). Conventionally, flow control valve20 is variably regulated to cause a deacceleration of moving mold member14 prior to reaching first crossover position 25 to minimize hunting orhysteresis in the hydraulic system. In the invention, the deaccelerationoccurs after first crossover position 25 is reached.) In practice, anumber of variables act on the control to cause its responsiveness atfirst crossover position 25 to variably shift towards second or stopcrossover position 26. The maximum shift is shown by dash line indictedby reference numeral 41 with the overtravel indicated by crosshatchedarea 42. Because the shift and overtravel 42 varies from one moldingcycle to the next the operator must set first crossover position 25 farenough away from second crossover position 26 to prevent damage to moldhalves 13, 14 upon closing. This is the distance shown as C_(o) -C₁.Obviously, by reducing this distance, moving mold member 14 can continueits fast rate of travel, thus, reducing the time to close the mold.

The operation of the control of the present invention isdiagrammatically shown in FIG. 4 in which theoretical curve 40 isreproduced and the overtravel, if any, is shown by dash line 43 andovertravel area 45. The control of the present invention, as will beexplained hereafter, can be designed to eliminate the overtravel thusallowing the machine operator to set the first crossover position alwaysat an optimal distance which prevents moving mold member 14 fromslamming into stationary mold member 13. The mold closing cycle is thusreduced since the fast stroke portion of the mold closing cycle can bemaximized thus reducing the overall cycle time. In fact, first crossoverposition 25 can be set to coincide with second crossover position 26 toobtain an optimized mold closing cycle in accordance with the inventionas explained below.

There are three principal variables which account for overtravel 42. Thevariables include the momentum of the moving mold member 14 whichcarries it forward after the signal to stop has been transmitted to flowcontrol valve 20. This variable depends on the machine hydraulics, themass of moving member mold 14, the speed of moving member mold 14, andother system variables discussed hereafter. In addition, overtravel 42also includes a variable response latency of the control.

How the variables affect the responsiveness of the control is bestillustrated by reference to FIG. 1 and FIGS. 5A through 5F where thetime of the response is plotted on the x axis and the number ofoccurrences at that time for a repeated number of cycles is plotted onthe y axis.

Initially the time that the event occurs or the time that firstcrossover position 25 is reached as determined by sensor 23 physicallyoccurs at the position shown by reference numeral 50 in FIG. 1 and isshown by a straight line on the y axis of FIG. 1A, also designated byreference numeral 50 for convenience, which occurs at time t₀. Theanalog sensor signal thus generated by sensor 23 at time t₀ as shown inFIG. 5A is then filtered by a conventional anti-aliasing filter 29 toreduce the high frequency noise before sampling. When the signal passesthrough filter 29 and reaches the position shown by reference numeral 51it will have been delayed a slight time, i.e., the time the signal isdelayed by passing through filter 29. Further, if a number of cycles arerun and the time of the delay recorded for each, it is found that thetime of delay will vary. Plotting the delay times of the signal atposition 51 will produce a bell-shaped curve, designated for convenienceas reference numeral 51 in FIG. 5B. The shape of this curve (and allcurves) is shown for ease in illustration as bell shaped. It isappreciated that the actual shape may not be bell shaped, i.e., thedistribution may not, and is not in fact, a Gaussian distribution forall events.

For definitional purposes, the average or peak value of curve 51 whichoccurs at a time indicated as t₁ in FIG. 5B is the response latency ofthe control attributed to filter 29 while the spread (which can beviewed typically as four (4) standard deviations) of the curve 51 is the"jitter" of the control attributed to filter 29. The "jitter" of filter29 is, for all intents and purposes, almost negligible. However, the"jitter" of other portions of the control may not be negligible, and theeffects of "jitter" are cumulative, as will be shown shortly. "jitter"adversely affects the control. How it is factored by the invention isone important aspect of the invention.

After the sensor signal passes filter 29, it is converted from an analogto a digital signal in an A/D circuit designated by reference numeral 35in analog card 34 shown in FIG. 1. When the sensor signal reaches theposition shown by reference numeral 52 in FIG. 1, the sensor signal willhave experienced a further delay attributed to A/D circuit 35. Thisdelay and the range thereof which is attributed mainly to thenon-synchronous discrete time steps of the conversion process is shownby a curve designated by reference numeral 52 in FIG. 5C. The averagetime delay or response latency is indicated by time t₂ which iscumulative because t₂ includes the response latency of filter 29 whichis t₁. The response latency attributed to A/D circuit 35 is the time t₂-t₁. Similarly the "jitter" of the control attributed to A/D circuit 35has to be summed with the "jitter" of the control attributed to filter29 which results in a wider spread and is shown by the dash linesindicated by reference numeral 52' in FIG. 5C.

After the sensor signal is digitized, it is transmitted to sequencercard 38 where the digitized signal acts to cause sequencer card 38 toperform algorithms and logic which generates a digitized output signalcorresponding to the slow closing speed of movable mold halve 14 set bythe operator at control console 30. As is well known by those skilled inthe art, sequencer card 38 performs a number of calculations and logicinstructions for a number of machine functions during a scan protocol.When it receives a sensor signal, it proceeds in its scan until itreaches the operative step whereat the mold closing output signal isgenerated. When the output signal is transmitted back to analog card 34and reaches position 53 it has been delayed not only by the time ittakes the processor to process the algorithm to generate the outputsignal but also by the significant and random time it takes the scan toreach the position where the algorithm can be actuated (i.e., "jitter").The time delay attributed to sequencer card 38 is shown by the graphdesignated by reference numeral 53 in FIG. 5D. The response latency isshown by time t₃ which is the cumulative latency of the control to thatpoint. The response latency attributed to sequencer card 38 is t₃ -t₂.Similarly the overall "jitter" of the control to position 53 isdesignated by the dash curve indicated by reference numeral 53'.

The digitized output signal is then converted to an analog signal in aD/A circuit 36 on analog card 34. D/A circuit 36 causes a further delayby the time the output signal reaches the position shown by referencenumeral 54 in FIG. 1. This is plotted by graph 54 shown in FIG. 5E witha cumulative response latency of the control designated by time t₄. Theoverall "jitter" at this position, again attributed to thenon-synchronous discrete time steps of the output conversion process, isshown by dash line 54'.

The analog output signal now travels on output signal line 21 to flowcontrol valve 20 which receives the signal and adjusts the hydraulics ofthe system to slow moving mold member 14. There is of course a delay inflow control valve 20 from the time it receives the output signal untilthe time it moves the valve. There is also the momentum or internalenergy of the system which counteracts the valve. The momentum isvariable depending on a number of different factors, but principally themass and velocity of moving mold member 14. The response latency of thecontrol attributed to system momentum (and valve delay) is shown bycurve 55 in FIG. 5F. The overall response latency of the entire controlis shown by time t₅ with the response latency attributed to systemmomentum being t₅ -t₄. The cumulative "jitter" is shown by dash line55'.

The control of the present invention utilizes several finite impulseresponse filters, each periodically predicting i) the position of movingmold member 14 at a future time, ii) comparing the predicted position tothe first crossover position 25 iii) so that the state of comparison aswell as other data can be contained in a predictive sensor signaldeveloped by each finite impulse response filter and sent to aprogrammable controller for processing in a manner defined below. Thespecifications throughout refer to the inventive concept as utilizingfinite impulse response filters which is a technical term given to themeaning of a routine performed typically by a CPU (central processingunit) to modify or filter a signal. The specifications use the term inthis manner. The actual device implementing the routine defined as afinite impulse response filter is a CPU.

When the predicted position reaches first crossover position 25 a changein the state of comparison is recorded in the predictive sensor signalstatus and the programmable controller reacts accordingly. In aconventional controller, the signal is processed as if it were thesignal developed by sensor 23 at first crossover position 25. In thecontrol system of the present invention, the signal is similarly treatedas the actuating sensor signal but controller changes its state in amanner described hereafter. The future time by which current position ofmoving mold member 14 is advanced (calculated from its present and pastspeed) to the predicted position is set for each finite impulse responsefilter to correspond to any one of several state variables affecting thesystem. In the preferred embodiment, the variables include the responselatency of the programmable controller, the "jitter" of the programmablecontroller and the time required to overcome the momentum or inertia ofmoving mold member 14. Each variable has a lag time. In the preferredembodiment, each finite impulse response filter then advances thecurrent position of moving mold member to a predicted position which isthe distance moving mold member 14 travels during the lag time and thepredicted position is compared to the crossover position etc.Alternatively, the time it takes for moving mold member to reach firstcrossover position 25 can be calculated by the finite impulse responsefilter and from that time, the lag (state variable) can be subtracted toestablish a predictive crossover position. When moving mold member 14actually reaches the predictive crossover position, the state ofcomparison changes and the predictive sensor signal is sent to theprogrammable controller. This alternative approach, however, is notpreferred.

How this can be accomplished mathematically is demonstrated by referenceto FIG. 6. FIG. 6 is plot of the position of moving mold member 14 withthe position of moving mold member 14 shown on the y axis and time shownon the x axis. A straight solid line 60 represents the actual positionof moving mold member 14 at a particular time in the mold closing cycle.The continuation of curve 60 represented by the dash line indicated byreference numeral 61 is the projected position movable mold member 14has when it reaches first crossover position 25. The position (forconvenience) is graphed as constant and thus curves 60, 61 are straightlines up to first crossover position 25. Those skilled in the art willunderstand that the velocity could be accelerating or deaccelerating andthe algorithms altered to account for a curvilinear curve. However, theinitial mold closing action is somewhat constant and is thus depicted asa straight line. As movable mold member 14 continues its travel, solidline 60 will replace dash line 61 until first crossover position 25 isreached.

The mathematics by which the finite impulse response filter calculatesthe predictive movable mold member position is relativelystraightforward. Distance=rate×time. Rate is the slope of solid line 60,i.e., velocity, and can be expressed as: ##EQU1## where x₁ is thecurrent position of moving mold member 14,

x₀ is a previous position of moving mold member 14 at time t₀,

t₁ is the time at which the current position of movable mold member 14is being sensed,

t₀ is usually 50 milliseconds prior to the current time t₁.

The predicted position x_(at) at the advanced time At corresponding tothe lag time (such as response latency) can be written as:

    x.sub.at =x.sub.1 +x'Δt                              Equation 2

Equation (2) can be rewritten into the following form: ##EQU2## which,in turn, is the classic finite impulse response filter form of:

    X.sub.at =a.sub.1.x.sub.1 +a.sub.2.x.sub.0                 Equation 4

where: ##EQU3##

Thus Equation 4 predicts at the current time the position moving moldmember 14 will be at after the "lag" has been taken up. If a graph of aplurality of x_(at) 's taken over a period of time were plotted thedot-dash line designated by reference numeral 65 would be generated andline 65 is parallel (assuming constant velocity and accurate sampling)to line 60 representing the actual sensed velocity, but offset oradvanced therefrom a time lag equal to Δt. Line 65 will thus intersectfirst crossover position 25 at a time, Δt, earlier than moving moldmember 14 actually reaches first crossover position 25. The finiteimpulse response filter thus takes and advances the input signal to apredicted position which is compared to the actual or set firstcrossover position 25 and the predicted position is calculated byanalyzing the past and current positions of moving mold member over timeto determine how far moving mold member 14 will travel during the "lag"of the control or other system variables. It should be appreciated thatthe calculation is not complex and can be quickly processed by theprocessor (less than 0.75 milliseconds in the preferred embodiment).This makes the control system responsive and accurate (It should also beunderstood that whatever "lag" is attributed to Analog card 34, the"lag" is likewise accounted for in the set time or advanced position ofmoving mold member 14). Again, it is to be understood that the advancedposition will vary because the speed will not be constant because ofvariations in the hydraulic system, wear of machine, etc. Line 60, infact, will not be a straight line, but will wiggle or snake towardsfirst crossover position 25. This will skew the predicted signal, i.e.,line 65, at any given position. By repeatedly calculating the predictedposition at short time intervals, the skewing of line 65 is reduced. Thepredicted signal is more accurate. Each molding cycle is controlledindividually based on the actual sensed conditions. Thus the inventionis simply not advancing the control a predicted time into the future.

The predictive technique illustrated in the preferred embodimentdetermines when a moving point intersects a stationary point.Preferably, the moving point is advanced a variable distance dependingon sensed conditions to determine when the intersection will occur.Alternatively, the stationary point could be advanced the variabledistance to determine when the intersection will occur. For exampleinstead of modifying the input signal and comparing the modified inputsignal to the set crossover position, it is possible to modify thecrossover position and compare the predicted crossover position to theactual sensor signal. An equation for using a modified crossoverposition would resemble:

    x.sub.pcp =x.sub.cp -Δt'.x'                          Equation 5

Where

x_(pcp) is the predicted crossover position advanced a distance equal tothat traveled by moving mold member 14 during time Δt,

x_(cp) is the set first crossover position 25.

Equation 5 will reduce to the form of Equation 4.

It is also possible to predictively modify both input and crossoverpositions and the invention contemplates all such approaches. However,it is preferred to modify the input signal by prediction from acomparison viewpoint, especially when moving mold member 14 is furtheraway from crossover position 25. More significantly, modifying the inputsignal also lends itself to other conventional control techniques whichmay be simultaneously or similarly employed such as passing the inputsignal through bandwidth filters to reduce noise and produce moreresponsive signals.

For the mold closing cycle of the preferred embodiment, the momentum Δtis set at 300 milliseconds, the Δt for response latency is set at 30milliseconds and a Δt for synchronization is set at 5 milliseconds. Thevalues of Δt will vary for different size machines and differentcontrols. The values for each Δt will also be checked and calibrated foreach machine during setup. However, the control is responsive only tothe actual observed movement of moving mold member 14. It is, of course,recognized that the speed of moving mold member 14 is never preciselyconstant. Throughout the mold close process, the speed varies somewhatand further the speed will vary from cycle to cycle. Thus, the inventionis not simply to set a predictive sensor signal corresponding to Δt butto sense existing conditions which includes a varying velocity andestablish, on the fly, the predictive sensor signal using Δt. Further,Δt, in accordance with the broader aspects of the invention, need not beset at a fixed predetermined time period, but could be generated by acalculation depending on the current state of the sensed events.

Heretofore, finite impulse response filters have had limitedapplications to industrial controls and no known applications toprediction in programmable controllers, in part, because of signal tonoise ratio constraints attributed to such devices. The inventionovercomes this difficulty by first utilizing anti-aliasing filter 29 andthen employing a buffer sampling technique which assures sufficientnumber of measurements to avoid or reduce signal noise and thenpredicting relatively small time "horizons".

Referring now to FIGS. 6 and 7, the sampling scheme which reduces signalnoise to produce discernible signals will be described further. A buffer70, diagrammatically illustrated in FIG. 7, stores at given timeintervals the sensor signal corresponding to specific positions ofmoving mold member 14 As discussed hereafter, buffer 70 has a number ofchannels (eight in the preferred embodiment numbered 79, 79a-g with eachchannel capable of storing 256 samples), and each channel stores sensorsignals from sensors other than sensor 23 for controlling other portionsof the molding cycle. In the preferred embodiment, position signals fromsensor 23 are stored in channel 79 of buffer 70 as samples at 0.25millisecond time intervals, shown by reference numeral 71. Every 0.75milliseconds, buffer samples in channel 79 are read for the x₁ and x₀values needed to perform equation 4 to develop the advanced moving moldposition which moving mold member travels to in the set time Δt.However, x₁ and x₀ is determined by reading and averaging 4 adjacentsamples (representing a span of one (1) millisecond). This is showndiagrammatically in FIGS. 6 and 7 by sample groupings represented byreference numerals 73 for x₁ and 74 for x₀. As noted above, x₀ (priormeasurements) lags x₁ by a fixed time, set in the preferred embodimentas fifty (50) milliseconds and indicated by reference numeral 75. Fifty(50) milliseconds was picked as a tradeoff between accuracy of theestimation of x' and the frequency of updating the calculation of x'.

Iterative equation 4 is again performed after the lapse of 0.75milliseconds, indicated by reference numeral 72 in FIG. 7, to calculatea new advanced position for moving mold member 14 based on the thencurrent position of moving mold member which will, in turn, bedetermined by averaging the four adjacent sample readings indicated byreference numeral 77 in FIG. 7 and a new x₀ ' calculated on the averagevalue of four adjacent readings indicated by reference numeral 78 inFIG. 7. (Three of the four samples for grouping 77 are shown as vacantin channel 79 in FIG. 7 since moving mold member 14 has not yet advancedto that position and electrical sensor 23 has not yet generated thesensor signal.) It was discovered that by averaging four samples atsmall time differentials signal noise for the position measurements anderrors resulting therefrom was significantly reduced. Further,repeatedly running the calculation at small time increments produced anaccurate reading of the velocity, especially so as movable mold member14 approaches first crossover position 25. The accuracy attributed torepeatedly performing the calculation was somewhat expected since it isa characteristic of finite impulse response filters. However, the signalnoise produced errors rendering the control somewhat unresponsive untilsampling a plurality of signals to determine the x₁ and x₀ positions.Again, the signal noise reduction making the finite impulse responsefilters signals discernible results because of the relatively simplecalculation which can be performed very rapidly by analog CPU 94 thuspermitting the rapid (0.75 ms) sampling scheme.

The invention as thus far described can be diagrammed as shown in FIG.8. Sensor 23 generates a continuous analog sensor signal both before andwhile a special event (i.e., first crossover position 25) is sensed. Theanalog signal is filtered at anti-aliasing filter 29 to reduce noise anddigitized at A/D circuit 35 to produce a plurality of sensor signals,each of which is being stored in buffer 70. Buffer 70 is periodicallysampled as described above and the data sent to a plurality of finiteimpulse response filters. In the preferred embodiment, and in theory,there is a first finite impulse response filter 80a for predicting theresponse latency of sequencer card 38 (or programmable controller), asecond finite impulse response filter 81a for synchronizing sequencercard 38 and a third impulse response filter 82a for predicting theresponsiveness of flow control valve 20, pump 17 hydraulic cylinder 18.Each finite impulse response filter 80a, 81a, 82a will send itspredictive signal to its respective comparator 84a, 85a, 86arespectively. Each comparator will compare the predictive signal with aset signal established by the operator at operator console station 30,i.e., first crossover position 25. When the predictive signal equateswith the set signal each comparator circuit 84a, 85a, or 86a, as thecase may be, will transmit its coded, predictive sensor signalindicative of the happening of a future predicted event to theprogrammable controller in sequencer card 38. In practice, the time toeliminate variations in response latency will be summed with the averageresponse latency in a manner described below which is a convenientmethod for accounting for the variations, i.e., "jitter".

Referring again to FIG. 2, the general architecture of the controlsystem for injection molding machine 12 includes a plurality of cards,each carrying one or more CPU's (central processing unit) and each cardinterconnected to one another through a common rack or bus 32 carryingone or more buses or backplanes. The principal cards or components ofthe system include an interface card 36 communicating with operatorstation 30 and with the other system components or cards through bus 32.Other cards include a temperature card 37 for regulating the temperatureof the heater bands of injection molding machine 12. Temperature card 37receives sensor signals on line 39a from sensor devices and transmitsoutput signals on output line 39b to output devices which control theheater bands. Similarly sequencer card 38 receives digital input signalson line 33a from digital sensors on injection molding machine 12 andtransmits digital signals on output line 33b to digital output deviceson injection molding machine 12 controlling certain machine functions.Analog card 34 receives analog input signals on line 31a from analogsensor devices such as electrical sensor 23 and transmits analog outputsignal on line 31b to analog output devices such as flow control valve20. A high speed link 45 interconnects analog car 34 with sequencer card38. The input and output devices are conventional and include assensors, potentiometer, transducers, LVDT's, etc. and as output devices,valves, motors, pumps, solenoids etc.

Sequencer card 38 is the programmable controller containing the basiccontrols or programmable routines which control the molding cycle ofinjection molding machine 12. The programmable routines do not, per se,form part of the invention although the invention must process theprograms to work. The programs are well known to those skilled in theart and can be generated by any skilled programmer. Accordingly, suchprograms will not be described further herein. Sequencer card 38receives operator set commands from operator station 30 and variousother sensor input signals from sensor devices either directly from line33a or from other sensors through bus 32 and performs, through itsuser-changeable programs, a first set or "normal" equations or logicinstructions which i) determine the value of certain sensor inputs, ii)perform logic and numeric calculations based on the sensor informationwhich can be time or count dependent, and iii) determine certain outputsignals based on the sensor inputs which control the molding cycle. Theuser-definable program of a programmable logic controller (sequencercard 38) must be periodically reviewed or "scanned" so that a) thevalues of internal variables associated with the input sensor signalscan be determined and updated, b) the logical and numeric equationsperformed with the periodic updated material, and c) the output devicescontrolled by periodically updated output signals. The manner of thescan is determined by the user-defined program. However, it isconventionally known and accepted that only after the user-definedprogram is completely scanned or evaluated are the output devices set tothe new values. The time for performing the scan cycle depends of courseon the complexity of the user-defined program and the speed of theprocessor. A conventional PLC for a conventional injection moldingmachines typically requires a scan time of about 25 to 50 milliseconds.As discussed above, when one of the sensors senses an event occurrence(such as first crossover position 25) which then triggers one or moreoutput responses, the lag or response latency can and does adverselyaffect the mold cycle. Heretofore, one approach followed by the industryhas been, fundamentally, to modify the scan cycle when the event isdetected to make the PLC respond faster to the event. Thus in Mead U.S.Pat. No. 5,291,391 a special high speed loop or program controlling aselect output device(s) is performed outside of the scan of the normalequations when the event is sensed. Basically, the PLC performs aspecial program controlling a single event which can be done in a shortscan of a couple of milliseconds. This type of system as well as otherprotocol interrupt systems, fundamentally can only reduce, noteliminate, the response latency. Outside of the complexity of suchsystems, a more subtle problem is introduced by such control systems,which can manifest itself in complex systems such as that encountered ininjection molding machines. If certain output devices are earlytriggered, before the PLC scan is completed, and the early triggereddevices affect other devices controlled by the normal PLC scan than theother devices are updated with "old" non-responsive information in theoutput signals generated during the scan, conceptually requiring twoscans of the PLC before responding with updated information. The presentinvention overcomes all of these problems because, as discussed above,it predicts when the sensed event occurs and inputs a predictive sensorsignal of the event into the PLC at an advanced time corresponding tothe scan time of the PLC so that the actual event occurs at the precisetime the scan is completed. This eliminates the response latency of thePLC and importantly does not adversely affect the programming nor thecontrol of other output devices periodically updated at the completionof the scan.

The mathematics for demonstrating a predictive event, first crossoverposition 25, has been discussed above and generally explained withreference to FIGS. 1, 2 and 5. The position of moving mold member 14 issensed by sensor 23 and sent as an analog signal to analog card 34 whereit is converted to a binary number, compared with a predicted positionand the status of which is then inputted to sequencer card 38 whichperforms a first set of normal equations to develop (among otherfunctions) a binary output signal transmitted back to analog card 34where it is converted (among other things and/or functions) to an analogoutput signal regulating flow control valve 20.

Referring now to FIG. 9, there is shown in schematic form that portionof analog card 34 and sequencer card 38 which performs the controlfunction described above. Analog sensor signal 23 is inputted to amultiplexer 80. In the preferred embodiment, multiplexer 80 can receiveup to eight different analog signals designated as 23, 23a through 23g.Examples of other sensor signals received by multiplexer 80 are screwposition, eject position, hydraulic pressure, mold cavity pressure, etc.

Analog Scanner Control Logic 84 is conventional (as are all depictedcomponents) and includes programmable logic equations such as "and/or"functions to select and send specific sensor signals 23-23g atappropriate times, duration and sequences through multiplexer 80, toanalog to digital circuit 35, and stores the 12-bit digitized samples inthe temporary memory buffer 90 as eight (8) groups of buffer 70 data.

The Analog Scanner Control Logic 84 includes, or has associatedtherewith, a memory address and offset generator, multiplexer channelcounter, a scanner state controller, and a clock circuit 86. A/D circuit35 is controlled through control line 87. Memory buffer 90 is addressedand selected through control line 92. In the preferred embodiment buffer70 has eight channels designated 79, 79a through 79g with each channelcorresponding to a sensor 23 and each channel can sample or store 256binary sensor signals 89. Typically, the samples are stored sequentiallyso that sensor 23 signal at a first time is stored as the first samplein channel 79, followed by sensor 23a signal stored as first sample inchannel 79a, etc. until all sensor signals for the first time period arestored at the first sample position, and the cycle repeated sequentiallystoring the second time sample signals in the second sample position.After storing 256 signals, the 257th signal writes over the first sampleposition. Thus with respect to channel 79, sensor signals are storedevery 0.25 milliseconds giving a capacity (0.00025 seconds×256 samples)in excess of 0.06 seconds, which is more than sufficient to calculatethe predicted positions. A CPU 94 is provided for controlling AnalogScanner Control Logic array 84 and performing the finite impulseresponse filter calculations. In the preferred embodiment CPU 94 is a16/32 bit Motorolla 68000 processor operating at 12 MHZ frequency. CPU94 in conjunction with a device select circuit 95 establishes processoraddress instructions on lines 96 to Analog Scanner Control Logic 84 toeffect the return of sensor signals from buffer 70. Processor dataindicated by reference numeral 97 is read from buffer 70 in accordancewith the sampling scheme described above in FIG. 7 on line 98 and themathematical calculations described above as well as logic functionsperformed by CPU 94. As is conventional, numeric equations, logicinstructions etc. are stored in ROM (read only memory) 99 and variablescalculated by the equations such as a₁, a₂, Δt, x₁, etc. are stored inRAM (random access memory) 100. CPU 94 performs the calculations,determines the present position of moving mold member 14, determines thepredicted position of moving mold member 14 corresponding to theresponse latency of the control (or other variables such as forsynchronization, system response), and compares the predicted positionof moving mold member 14 with first crossover position 25. CPU 94 theninforms a programmable peripheral interface 102 of the state ofcomparison through high speed link 45. Programmable peripheral interface102 is also under the control of CPU 94 through device select circuit 95containing controlling control logic functions on control line 104 thatestablish a multi-byte, checked sum, interrupt driven protocol which istransmitted to a similar programmable peripheral interface 105 onsequencer card 38.

The protocol signal transmitted from programmable peripheral interface102 on analog card 34 to programmable peripheral interface 105 onsequencer card 38 is a 6 byte signal or data package designated asreference numeral 108 in FIG. 9 having the following information:

Start of message code (number)

channel number (CN)

Set off number (SN)

Filter number (FN)

State--0 or 1 (S)

Check sum (CK)

In the preferred embodiment, the protocol signal is the predictivesensor signal advising sequencer card 38 of the status of moving moldmember 14 relative to first crossover position 25. The predictive signalhas been advanced by a time predicted to equal or exceed that of theresponse latency of the programmable controller in sequencer card 38 andperiodically compared to the crossover position. When the predictivesensor signal reaches the crossover position (which is before movingmold member reaches first crossover position 25) the state of comparisonwill change (state changes from 0 to 1), the state information willchange and sequencer card 38 will now process the predictive sensorsignal as if first crossover position 25 has been reached. In additionit is to be understood that the actual sensor signal emanating fromsensor 23 and indicative of the actual position of moving mold member 14is still being compared against first crossover position 25 as it alwayswas. That information (which is not processed by the finite impulseresponse filter) is sent as an actuating sensor signal with its ownprotocol or data packet through programmable peripheral interface 102 tosequencer card 38 vis-a-vis high speed link 45. The protocol foractuating sensor signal is different from that of the predictive sensorsignal in that the filter number, FN, is assigned a different value byCPU 94. Otherwise, the signals and their scheme for recognition isidentical in that both signals are compared against first crossoverposition 25 to indicate an on-off change of state in the state byte, S,which is 0 or 1.

Sequencer card 38 is conventional and contains its own CPU 110, which inthe preferred embodiment is a Motorolla 68000 16/32 bit processoroperating at 12 MHZ frequency. CPU has a ROM memory 112 containing theexecutive programs, logic programs and a RAM memory 114 including amemory storage area 115 for the execute and logic programs, an inputtable 116 and an output table 117. Input table 116 includes the state ofall current input date and comparisons which is as previously described.Specifically, for discussion of the invention, input table 116 containsthe predictive sensor signal and the actuating sensor signal inputted tosequencer CPU 110 through sequencer programmable peripheral interface105. As analog card 34 periodically generates the signals, and indicateswithin the signal whether the state has or has not changed, input table116 is likewise periodically updated. Output table 117 contains theoutput signals in binary form periodically generated by sequencer CPU110 performing or evaluating a "normal" series of numeric and logicinstructions stored in a logic program 118 of ROM 112 which alsocontains the execute program language stored in an exec. program 119. Asindicated, the resulting output signals generated by CPU 110 performinglogic program 118 are periodically placed in output table 117 from whichcertain output signals (such as those regulating flow control valve 20)are transferred back through a programmable peripheral interface (notshown) and high speed link 45 to analog card 34. When reading analogcard 34, the binary signals are converted to analog signals in D/Acircuit 36 (FIG. 1) also under the control of programmable gate array 84and analog CPU 94 in a conventional manner so that it is not shown ordescribed further herein. Other output signals are transferred bysequencer output line 31b to digital output devices (not shown) whileother output signals reach operator station 30 through interface 36 andbus 30.

As thus far described, the invention can function in any conventionalprogrammable controller to control the molding cycle of an injectionmolding machine using conventional logic. The predictive sensor signalwill generate an output signal for a select output device which willarrive at the output device just as the actual event occurs. To insurethe arrival of the output signal to the output device "just-in-time" theoutput signal can pass through a gate circuit or control which openswhen it receives the actuating sensor signal. In this manner, earlyarrival of the output signal is prevented. The actuating sensor signaldoes not pass through the scan effected by sequencer CPU 110. However,the invention does not contemplate using conventional control logic tocontrol the molding cycle. The invention contemplates that the moldingcycle will proceed by passing through a series of states, each stateexecuted by sequencer CPU 110 periodically evaluating or scanning aseries of equations in each state.

This is generally illustrated in FIG. 10 where there is shown in blockdiagram the state transition from a state A to a state B which proceedsor is processed in the direction of arrow 120. Block 122, indicative ofcurrent state A contains a number of numeric and logic equations andcorresponds to ROM logic program 118. The equations in state A block 122which can be viewed as a first set of normal equations are processedsequentially in a scan indicated by arrow 125 which takes some time, Δt,to perform. Inputs are read into logic A block 122 at 123 from inputtable 116 and outputs are read out of logic A block after performingscan 125 at 124 into output table 117. In accordance with the broadscope of the invention, the predictive sensor signal can be assumed,because of the sampling technique and calculations discerned above, tobe the exact equal of the actual sensor signal. Accordingly since thepredictive sensor signal is advanced Δt, when state A scan 125 iscomplete the output signal is read out at the completion of the scan andstate B is entered. At that time, state A stops execution. The controlis in state B which has its own second set of normal equations in scanlogic block 136.

As indicated, flow diagram of FIG. 10 is processed in the direction ofarrow 120 in which state A is scanned in state A logic block 122 andoutput signals generated periodically and written out at 124. Whenpredictive sensor signal is sensed there is a transition from state A tostate B at the completion of scan 125 in state A logic block 122. Thepredictive sensor signal causes a state change written out at 124 andcauses execution of state B to commence either through state wait block130 and state prep block 134 or through state prep block 134. Wait block130 is basically a synchronizer/fail safe device. It holds flow controloutput signal from state A until the actuating sensor signal is receivedand read in at read portion 128 of wait block 130 whereupon it istransmitted to read in portion 132 of a prep block 134. Actuating sensorsignal is technically not processed by any CPU scan. Wait block 130contains a counter or timing circuit (not shown) which counts the timeit takes to receive the actuating sensor signal after the flow controloutput signal is received from state A and if prep block 134 does notreceive the actuating sensor signal within an estimated time, there isan indication something has gone awry. In such event, wait block 130prevents transmission of the output signal to state B prep block 134 andcontrol is returned to state A. Assuming the actuating sensor signal hasbeen received within an appropriate time the output signal istransmitted into read in portion 132 of prep block 134 which writes theflow control valve output signal to a read out block portion 135 whereit executes a change in the analog voltage sent out at D/A circuit 36 toflow control valve 20. Also, state B logic block 138 execution beginsand state B scan 136 is instituted. Thus, there is a very precise,definite start time of the new state.

It is understood by those skilled in the art, that the normal "state A"routine, as initially indicated above is to contain the logic for thecomplete molding cycle, starting from the time the mold is open, to moldclose, inject, recover, mold open and eject. Each of these functions, inturn, has a number of additional steps and some functions interrelate toone another. Thus, when the timing of any one event had to be especiallycontrolled, special interrupt routines and the like had to be especiallydeveloped. The CPU had to cycle between routines, recognizing certaincommands to take a special event off line and do a special calculationthen somehow updating the general scan with the off-line controllerevent. All of the approaches resulted in faster responding controls tocertain events but did not reduce the lag time to zero, nor can they,practically speaking, result in a timely update of the general scan.

The invention utilizes an entirely different approach based on differentstates and state transitions. Generally speaking, the molding cyclestarts in state A. When an event is sensed, it switches to anotherstate, state B, and depending on what happens in state B, there will befurther transitions to a number of other states. The scan time for eachstate is faster than the scan time for all states which makes thecontrol more responsive considering, if nothing more, the scan time.This fundamental approach represents an improvement to the prior art.However, the material advancement is the use of predictive sensorsignals to cause the state transition coupled with a very precise,definitive state change. For example, state A, the fast closing moldspeed, is changed to state B, the slow closing mold speed, by apredictive sensor signal which causes the state transition and moves thesystem out of state A before the sensor generates the event signal.Then, the wait block concept is used to initiate the state B scan.However, at the time the scan of state B is instituted the prep blockhas outputted the flow control valve output signal. Thus, state B scan136 starts with completely updated information and it precisely startsvis-a-vis prep block 134. Similarly, predictive sensor signals areemployed to affect a change from state B to another state. State A nolonger executes. There no longer is a problem with updating state A withinformation resulting from the special events pulled off the processingscan.

This may be made more clear by referring to FIG. 11 which shows in blockform the state transition logic related to the mold close portion of themolding cycle and to which the preferred embodiment of the inventionrelates.

In FIG. 11 there is a clamp process logic block 140 which contains theinstructions for all functions related to clamp closing. Clamp processlogic block 140 can be viewed as state A. The clamp functions are eachdiagrammed in block form and follow the logic path arrows indicated byarrow reference numerals as follows:

i) reference numeral 141 tells the molding machine to inject because themold is closed;

ii) reference numeral 142 tells the machine to stop mold closing becausecertain switches have not been set or valves opened;

iii) reference numeral 143 sets forth a logic which tells the machine tobrake moving mold member 14 because moving mold member 14 has reachedthe closest position to stationary mold member 13 it can have withoutimpact;

iv) reference numeral 144 tells the machine to set any cores in the moldif required; and

v) reference numeral 145 tells moving mold member 14 to slow downbecause it has reached crossover position 25.

The clamp process logic instructions in block 140 are contained in logicprogram 118 and are processed in a scan of logic program 118 orreferring back to FIG. 10, they are processed in state A logic block122. Each of the logic paths 141-145 indicate a state transition toanother state, i.e., state B in FIG. 10. The logic code with commentsfor clamp process logic block 140, with comments, is reproduced below:

    ______________________________________    Instruction        Comment:                       Example Clamp close logic.                       This is simplified processing                       block for clamp closing                       logic. It is repetitively run                       until a state command                       changes the current state.                       At that time the new state's                       wait block, then its prep,                       and then its process-                       ing block are run.    BLOCK CloseProcess;    Call AsynchLogic;  *Tasks which be run in all                       states.    IFC  {LD inGateClose, AND                           *Check for front gate         crClampTopClose;},                           *and push button control                           relay         STATE atClampStop,                           and Exit to sudden stop if                           lost (ref. num. 142)    ENDIF;    IF   {LD lpCoreSetPos.app.                           *Are we nearing core set                           pos.         AND crSetCoresOnFly;};                           *Do we want to set cores         STATE StSetCores; *then set cores (ref. num.                           144)    ENDIF;    IF   lpModeCloseSlow.app;                           *are we nearing close slow                           setpoint         STATE stClampCloseSlow,                           *then go to close slow state                           (ref. num. 145)    ENDIF;    IF   lpMoldIsClose.in300ms                            *If you are within 300 ms                            of full close         STATE stClampBrake                           *then decelerate the clamp                           (ref. num. 143)    END IF    IF   lpMoldIsClosed.at;                           *are we at mold closed         STATE stInject    *then begin injecting (ref.                           num. 141)    END IF    ENDBLOCK    ______________________________________

The preferred embodiment is shown to occur in state transition logicpath 145. In accordance with the clamp process program instructionsabove for clamp logic block 140, when the predictive sensor signal isreceived, (shown by reference numeral 150 in FIG. 11) the logicinstruction, "linear position close slow - approaching", is implementedand the control moves out of state A into state B and the logic in aclose slow wait block 151 is implemented. The logic executed for closeslow wait block 151 may be written as follows:

    ______________________________________    Instruction    Comment                   Example Wait Block for CLOSE                   SLOW STATE. This block is run                   until the actual position is                   met to synchronize the output                   of the solenoids and analog                   valve signals with the input                   signal.    BLOCK CloseSlowWait;    CALL CheckSafety;                   *have we lost a safety condi-                   tion    IF lpCloseSlow.at                   *are we at the actual position    WAIT EXIT;     *then proceed on to write out                   changes    }    ENDBLOCK;    ______________________________________

As indicated from the instructions for close slow wait block 151, theCheckSafety instruction is the timing/fail safe feature discussed above.When the actuating sensor signal is received (indicated by referencenumeral 152 in FIG. 11) the output signal is released from wait block151 and transmitted to a close slow prep block 153 which contains thelogic instructions to output the signal for the close slow state. Thelogic instructions prep block 153 may be explained as follows:

    ______________________________________    Instruction    Instruction                   Example Prep Block for CLOSE                   SLOW STATE. This block is run                   once the close wait block is                   completed.    BLOCK CloseSlowPrep;    LD 1;    STO so1RG      *write out some solenoids    STOC so1GG2    MOVE aoutCloseSlow;                   *and execute a change in the                   analog voltage    ENDBLOCK    ______________________________________

Once the logic in close slow prep block 153 is complete (and the analogsignal for flow control valve 20 sent), simultaneously the logic forclose slow block 154 is processed by a scan of the instructionscontained therein. Close slow block 154 corresponds to state B logicblock 138 described in FIG. 10. It contains the same instructions asthose for clamp process block 140 set forth above, or alternatively, thesame instructions less those covering slowing moving mold member 14 onpath 145. (Alternatively, it can contain an entirely different set ofinstructions which occurs, for example, in the inject flow block.) StateB is now being scanned for an event to trigger another state.

As noted above, Δt is set to be equal to or greater than the time "lag".Response latency is defined as the "average" time lag. "Jitter" isdefined as the spread of the lag. In the preferred embodiment for theclose-slow logic path 145, Δt for the response latency is set to begreater than the response latency value a time long enough to accountfor the "jitter". The lag varies from scan to scan but by inputting thepredictive sensor signal 150 at a time sufficient to account for allsuch variations, close-slow wait block 151 synchronizes actuation ofclose slow prep block 153 with actuating sensor signal 152 to accountnot only for response latency but also for any variation on a cycle bycycle basis.

A similar approach is followed to set the cores in the mold. Asindicated and discussed with reference to FIG. 9 other predictive sensorsignals and actuating sensor signals i.e., 23a, 23b, etc., can bedeveloped and used in accordance with the invention and the core setlogic path 144 in FIG. 11 is such an example and parallels that ofchanging mold closing speed described for the preferred embodiment. Inthis alternative embodiment, a predictive sensor signal at the corestation appraises the core set position and is advanced to occur in timebefore the cores are set on the fly while an actuating sensor signalindicating that the cores are fully set (and preferably developed fromthe same sensor, i.e., 23a), is also developed in a similar manner asthat discussed for changing the speed of moving mold member 14 above.Core setting thus follows another state transition along statetransition path 144. State A represented by clamp process logic block140 changes to state "C" represented by a set core logic block 164. Thusa coded predictive sensor signal for the core set function (protocolsignal member has a different channel number) indicative of the "linearposition of the core set position.appraised" and carrying with it theinstruction to set the cores on the fly shown by reference numeral 160is inputted in advance time to clamp process logic block 140, which uponcompletion of its scan, sends its output signal to state "C" vis-a-vis aset core wait block 161. Set core wait block releases its instructionsthat the cores are set when it receives an actuating sensor signalindicative of the command "linear position core set position. at" to setcore prep block 163 which in turn causes actuation of associated outputdevices. Simultaneously set core block 163 causes execution of logic instate "C" set core block 164 which is identical to the logic of clampprocess block logic 140.

It is not necessary to have a wait logic block (i.e., state B wait block130 in FIG. 10). However it is preferred to use a prep logic bloc (i.e.,state B prep block 134 in FIG. 10). This is demonstrated in thepreferred embodiment by considering the logic used on logic path 143which insures braking of moving mold member 14 when it reaches aposition within 300 milliseconds of stationary mold member 13 travelingat its current fast speed. In this instance there is no actuating sensorsignal. If the predictive sensor signal senses the condition, thecontrol will change from state "A" to effect clamp braking in state "D"by executing state "D" clamp brake logic block 172. Accordingly, thepredictive sensor signal for mold momentum (i.e., 82a, bf₃ in FIG. 8)shown as reference numeral 170 in FIG. 11 and carrying an instruction"linear position mold is closed in 300 ms" is read in state A clampprocess logic block 140 and outputted to state "D" vis-a-vis a clampbrake prep block 171 carrying instructions to start mold braking andexecuting logic instructions contained in state "D" clamp brake logicblock 172. Clamp brake logic block 172 contains the same instructions asclamp process logic block 140.

Completing the description of the clamp close process disclosed in FIG.11, there is also under control of clamp process block 140 the beginningof the injection of molding material which is controlled by theinjection logic flow path 142 and which starts when moving mold member14 and stationary mold member 13 are closed as sensed by sensor 23. Inthis flow path, a predictive sensor signal is not inputted to state A tocause a transition to the inject state, i.e., state "E" contained in aninject logic block as 175. The actuating sensor signal indicated byreference numeral 175 is inputted to state A logic process block 140 tocause an output instruction such as "linear position mold is closed.at"to be inputted to an injection prep block 174 containing logic orinstructions to start injection and simultaneously starts inject processlogic shown in injection block 175. The logic in injection logic block175 contains a second set of normal equations which are different fromthose of clamp process logic block 140. Finally, as a safety precautionand to prevent mold damage if certain gates are not closed or movingmold member 14 is too close to stationary mold member 13, actuatingsensor signals indicative of such conditions shown by reference numeral176 cause a change of state from clamp close process block 140 to aclamp stop state, i.e., state "F" indicated by clamp stop logic block178 vis-a-vis an instruction such as "lnGateClosed" or "Clamp tooClose"inputted to a clamp stop prep block 177 containing logic or instructionsto stop moving mold member 14 and execute the state "F" logicinstructions contained in clamp stop logic block 178. Also the conceptof state transition vis-a-vis a prep block containing the instruction toactivate another state can be used to trigger the state A clamp closeprocess block 140 and this is shown in FIG. 11 where a signal indicatingthat moving mold member is traveling fast implements a close fast prepblock 179 and, in turn, the logic in clamp process block 140.

In summary, FIG. 11 shows a spider web progression in which the moldingcycle is controlled by sequencer CPU 110 scanning a first conditionstate which is indexed to a second state when any one of a number ofspecific input sensor signals are detected. During the second state theoutput instructions are first executed and the second state thenscanned. The second state may contain the same logic instructions as thefirst state or the instructions may be different. Thus, the complexlogic or equations utilized by prior art interrupt schemes is completelyeliminated. Importantly, by triggering the state transition by apredictive sensor signal, control time "lag", or system time lag can beeliminated. Finally, by synchronizing the transition to the second statewith the actual event, a reliable and predictable control resultspreventing early execution and sharp or precise state transitions.

The operation of the preferred embodiment insofar as it relates to speedchangeover at first crossover position 25 may now best be explained byreference to FIGS. 12a, 12b, 12c and 12d which show the state transitionby a series of graphs plotting the event as function of time on thex-axis at a scale which is common to all figures. FIG. 12a for allintents and purposes is identical to FIG. 6 and plots position on they-axis. Actual position of moving mold member 14 detected by sensor 23is shown as solid line 60. Solid line 60 intersects at first crossoverposition 25 at time t'. Dash line 65 is parallel to solid line 60 andoffset therefrom a time Δt as discussed above. The Δt time is 30milliseconds for the preferred embodiment. Dash line 65 is thepredictive sensor signal derived from sensor 23 and intersects firstcrossover position 25 at an earlier time t. FIG. 12B shows thetransmission of the signals from and to analog card 34 and sequencercard 38 vis-a-vis high speed link 45 with the strength of the signalplotted on the y-axis. Δt time t predictive sensor signal 180 isinputted from analog card 34 through programmable peripheral interface102 to input table 116 in sequencer card 38. At time t' actuating sensorsignal 181 is inputted from analog card 34 through programmableperipheral interface 102 to input table 116 in sequencer card 38. Acouple of microseconds later, at time t" (exaggerated for clarity in thedrawing), an output signal 183 is inputted from sequencer card 38through a programmable peripheral interface vis-a-vis high speed link 45to analog card 34 and therefrom to flow control valve 20.

FIG. 12C plots the output signals generated by sequencer CPU 110 whencompleting the scan of logic program 118. The scan time is thusportrayed as blocks 185 and progressively numbered as 185a-185g in FIG.12C. Blocks 185a-g have a processing state indicated as "A" or "B".Processing state "A" in FIG. 12c is state A shown in FIG. 10 or state Arepresented by clamp process logic block 140 in FIG. 11. Thus sequencerCPU 110 is processing the state as a fast moving mold member state.Sometime during the scan designated as 185C predictive sensor signal 180is generated and predictive sensor signal 180 has to wait before beingplaced in input table 116 until sequencer CPU 110 completes the 185Cscan. At the time CPU 110 starts the next scan which is scan 185D,predictive sensor signal 180 is placed in input table 116 and a changein signal (from "0" to "1") is processed during the 185D scan. At thestart of the next scan, 185E, state A ends and state B begins executionof the wait block which is state B wait block 130 in FIG. 10 and closeslow wait block 151 in FIG. 11. Wait block 151 is in turn scanned butvery rapidly and the scan of wait block 151 is shown by arrows 187.Actuating sensor signal 181 is now inputted to wait block 151 whichcompletes its scan upon receipt of actuating sensor signal 181(instruction "linear position close slow.at") and begins state B prepblock which is state B prep block 134 in FIG. 10 and close slow preplogic block 153 in FIG. 11. The time for close slow prep logic block 154to execute and send the digitized signal to D/A circuit is in themicrosecond range and is indicated by reference numeral 188 in FIG. 12C.This occurs at time t". State B logic is now processed by a scan of thelogic instructions contained in stage B logic block 138 in FIG. 10 andclose slow logic block 154 in FIG. 11 and shown as scans 185E, 185F,185G. Because the instructions for state B are the same as theinstructions for state A (in the preferred embodiment), all scans 185A-Gtake the same time. The analog output voltage is shown in FIG. 12D wherethe fast close output voltage is shown by line portion designated 190and the slow close output signal is shown by slow line portiondesignated 191. As previously indicated, at first crossover position 25,moving mold member 14 is not instantaneously slowed but predictivelybraked to its slower speed 191 and this deceleration is shown by lineportion 192. The deceleration starts at time t" which is offset severalmicroseconds from the actual crossover time t' which has no effect onthe molding cycle. If it was desired to eliminate the severalmicroseconds, this could be simply done by filtering actuating sensorsignal 181 but this is not necessary.

FIGS. 12A, B, C, and D should be compared to FIGS. 13A, 13B and 13Cwhich similarly illustrate how the clamp braking logic flow 143diagrammed and discussed with reference to FIG. 11 works. In clampbraking there is no wait block. The predictive sensor signal simplytriggers clamp brake prep block 171 for execution of the analog command.FIG. 13A again shows FIG. 6 with the actual position of moving moldmember 14 shown by solid line 60 and the predictive position shown bydash line 65. The clamp fully closed position is shown by referencenumeral 26 indicating second crossover position 26. The time by whichthe moving mold position is advanced, Δt, is set at 300 milliseconds forreasons explained above. If the state change for predictive sensorsignal is sensed at time t, state A changes to state B and thetransition is effected by execution of prep block 171 which actuates thebrake output signal. This is shown in FIG. 13B where the analog outputsignal regulating flow control valve 20 at the close-fast speedindicated by line portion 200 immediately goes into a predictive brakingmode where moving mold member is decelerated to "stop" voltage, shown bycurve portion 201, over a time arbitrarily set at 260 milliseconds whichis shown by reference numeral 202. When stop position at time t' isreached the analog voltage is increased to stress the tie rods asexplained above. The reason for braking over a time span of 260milliseconds while the predictive sensor signal is set at 300milliseconds is best shown by FIG. 13C which plots clamp velocity on they-axis. At time t, the time of the predictive sensor signal statechange, the velocity decreases to a time corresponding to position 202.However the inertia of moving mold member 14 carries it forward, asindicated by the "blip" 203 before the braking can take hold and stopmoving brake mold member 14. The forty millisecond additional timeperiod allows for this internal energy or inertia carry forward. Notshown in FIG. 13 are the time scans corresponding to the "0" and "1"states shown in FIG. 12B. If scan blocks were drawn for FIG. 13, theywould simply proceed from a state A "0" state to a state B "1" state.When the predictive sensor signal is inputted to sequencer 34, it willbe delayed until the state A scan being processed is completed. The nextstate A scan will input the predictive sensor signal which at thecompletion of that scan will output the signal state B vis-a-vis to thetransition prep block 171, etc.

Particularly pertinent features of the invention can be generallysummarized as follows:

A) A state change methodology is used in programmable controller CPU 110for sequencer card 36. Instead of a scan of a set of "normal" equationsusing a ladder logic which contains the entire molding cycle, the scanby CPU 110 is progressed through a set of "normal" equations indicativeof that particular state in which the molding cycle is in at thatparticular time so that when an actuating event is detected by a sensor,the programmable controller processes that state and writes outputsignals and enters into another state where it processes a second set of"normal" equations. The molding cycle thus progresses from beginning toend through a progression of states.

B) Preferably, the actuating event which triggers a state change is setby a predictive sensor signal which occurs prior to the actuating eventin order to compensate for lag of the programmable controller and/or thesystem response to the output signal. The predictive sensor signal whileideal for a state transition control arrangement can also function inany conventional programmable controller scanning a first set of normalequations. Significantly, the predictive sensor signal is developed onthe fly from actual sensed condition to provide a reliable and accuratesensor signal.

C) Preferably, when using a predictive sensor signal to cause the statetransition, the transition from one state to the time where a scan ofthe second set of equations in the next successive state begins, is helduntil arrival of the actuating sensor signal whereby the transition fromone state to another proceeds at the precise time desired without delayor early triggering.

The invention has been described with reference to a preferredembodiment. Modifications and alterations will occur to others skilledin the art upon reading and understanding the detailed description ofthe invention set forth herein. For example, the invention has beendefined as utilizing a finite impulse response filter which is sometimesotherwise known as a FIR filter, a transversal filter, a tapped delayline filter, or a moving average filter. At least one author hasidentified all such filters as a nonrecursive filter. In contrast, othertypes of filters such as an infinite impulse response filter can beused. At least one author has defined such filters by the name recursivefilter and besides calling them infinite impulse response filter,identifies such filters by additional names as FIR filter, ladderfilter, lattice filter, wave digital filter, autoregressive movingaverage filter, ARMA filter, autoregressive integrated moving averagefilter and ARIMA filter. Such recursive filter is defined as a lineardifference equation with constant coefficients. It is contemplated thatsuch recursive filters can be used in the present invention in place ofthe finite impulse response filter illustrated. It is intended toinclude all such modifications and alterations insofar as they comewithin the scope of the invention.

Having thus defined the invention, it is claimed:
 1. A method forcontrolling the molding cycle of an injection molding machine having aplurality of controls, each control regulating one or more states of themolding cycle and a change in the output of any specific controlrepresenting a state transition indicative of the progression of themolding cycle through a specific phase of the molding cycle, the methodcomprising the steps of:a) initially evaluating a first set of normalequations by means of a programmable logic controller periodicallyscanning said first set of equations; b) generating a variable controlsignal for each control indicative, upon variation, of the occurrence ofa sensed event during the molding cycle; at least one variable controlsignal for one specific control evaluated by said programmable logiccontroller performing said first set of normal equations and generatingan output signal for actuating said control upon the occurrence of achange in said variable control signal; c) evaluating a second set ofnormal equations in lieu of said first set of normal equations when saidfirst set of normal equations evaluated by said programmable logiccontroller causes generation of said output signal for actuation of saidspecific control whereby said state of said molding cycle is changed;and d) sequentially evaluating subsequent sets of normal equations inlieu of previously evaluated sets of normal equations once a specificvariable control signal causes the programmable logic controllerperforming sets of normal equations associated with that variablecontrol signal to generate an output signal to, in turn, change theoutput of the control associated therewith until the molding cycle iscompleted whereby the scan time of said programmable controller isreduced and the response time of the control is increased.
 2. The methodof claim 1 further including the step of generating said variablecontrol signal as a predictive control signal which is generated priorto the time said event occurs and inputting said predictive controlsignals to said programmable logic controller as if it were saidvariable control signal sensing the occurrence of said actual event sothat said programmable logic controller causes said output signal forsaid specific control to be generated at the time said actual controlsignal indicative of the event occurs.
 3. The method of claim 2 whereinsaid output signal is prevented from being released to actuate itsassociated control until the change in said variable control signalindicative of the sensed event is generated as a synchronizing signal,said synchronizing signal not being evaluated by any set of normalequations.